Starlark in Rust
An implementation in Rust of the Starlark language
Starlark, formerly codenamed Skylark, is a non-Turing complete language based on Python that was made for the Bazel build system to define compilation plugin.
Starlark has at least 3 implementations: a Java one for Bazel, a Go one and this one.
This interpreter was made using the specification from the go version and the Python 3 documentation when things were unclear.
This interpreter does not support most of the go extensions (e.g. bitwise
operator or floating point). It does not include the set()
type either (the
official Starlark specification
does not have them either). It uses signed 64-bit integers.